/**
 * $Id: MobileShoppingListApplication.h 29 2008-01-17 07:10:07Z robertsaenz $
 */
#import <UIKit/UIApplication.h>
#import <UIKit/UIWindow.h>
#import <UIKit/UINavigationBar.h>
#import <UIKit/UITransitionView.h>

#import "MSLStructures.h"
#import "ShoppingListView.h"
#import "CategoryListView.h"

@interface MobileShoppingListApplication : UIApplication {
	UIWindow *mainWindow;
	UIView *mainView;
	UINavigationBar *navBarTop;
	UINavigationBar *navBarBot;
	UITransitionView *transitionView;

	NSString *dirPath;
	NSString *filePath;
	NSString *preferenceFilePath;

	confirmType whichConfirm;
	ViewType curViewType;

	struct CGRect fullScreenRect;
	ShoppingListView *shopListView;
	CategoryListView *catListView;
	BOOL editMode;
}

- (void) applicationWillTerminate;
- (void) applicationResume:(struct __GSEvent *) event;
- (void) applicationSuspend:(struct __GSEvent *) event;
+ (MobileShoppingListApplication *) sharedInstance;
- (void) applicationDidFinishLaunching:(id)unused;
- (void) applicationWillSuspend;
- (void) addShoppingListItem: (NSString *) itemName;
- (void) showConfirmation: (NSString *) message withTitle: (NSString *) title andConfirmType: (confirmType) type;
- (void) loadView: (id) view withTrans: (int) trans andPushItem: (BOOL) pushItem;
- (void) removeShoppingItem: (Item *) item;

// Delegate methods
- (void)navigationBar:(UINavigationBar*)bar buttonClicked:(int)button;
- (void)alertSheet:(UIAlertSheet *)sheet buttonClicked:(int)button;


@end
